﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 资产处置变更单行AITDTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class FA_DisposalDetailAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public FA_DisposalDetailAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
		
		
					Qty= 0; 
							LineNum= 0; 
							DisposalQty= 0; 
				

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.FADisposalAITDTO != null) 
			{
				this.FADisposalAITDTO.DoSerializeKeyList(dict);
			}
	        			if (this.FA_DisposalTagDetail!=null)
			{
				foreach(ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData objdata in this.FA_DisposalTagDetail)
				{
					objdata.DoSerializeKeyList(dict);
				}
			}
				        			if (this.FA_DisposalDocPreDepreciateDetail!=null)
			{
				foreach(ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData objdata in this.FA_DisposalDocPreDepreciateDetail)
				{
					objdata.DoSerializeKeyList(dict);
				}
			}
				        			if (this.UOM != null) 
			{
				this.UOM.DoSerializeKeyList(dict);
			}
	        	        	        	        			if (this.AssetCard != null) 
			{
				this.AssetCard.DoSerializeKeyList(dict);
			}

		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public FA_DisposalDetailAITDTOData(  ufida.u9.ait.openapi.FADisposalAITDTOData fADisposalAITDTO  , List<ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData> fA_DisposalTagDetail  , List<ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData> fA_DisposalDocPreDepreciateDetail  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData uOM  , System.Int32 qty  , System.Int32 lineNum  , System.Int32 disposalQty  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData assetCard  )
		{
			initData();
			this.FADisposalAITDTO = fADisposalAITDTO;
			this.FA_DisposalTagDetail = fA_DisposalTagDetail;
			this.FA_DisposalDocPreDepreciateDetail = fA_DisposalDocPreDepreciateDetail;
			this.UOM = uOM;
			this.Qty = qty;
			this.LineNum = lineNum;
			this.DisposalQty = disposalQty;
			this.AssetCard = assetCard;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 资产处置AITDTO
		/// 资产处置变更单行AITDTO.Misc.资产处置AITDTO
		/// </summary>
		private ufida.u9.ait.openapi.FADisposalAITDTOData m_fADisposalAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.FADisposalAITDTOData FADisposalAITDTO
		{
			get	
			{	
				return m_fADisposalAITDTO ;
			}
			set	
			{	
				m_fADisposalAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 资产处置变更单数据标签明细
		/// 资产处置变更单行AITDTO.Misc.资产处置变更单数据标签明细
		/// </summary>
		private List<ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData> m_fA_DisposalTagDetail ;
		[DataMember(IsRequired=false)]
		public List<ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData> FA_DisposalTagDetail
		{
			get	
			{	
				if (m_fA_DisposalTagDetail == null )
				{
					List<ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData> n_m_list = new List<ufida.u9.ait.openapi.FA_DisposalTagDetailAITDTOData>() ;
					m_fA_DisposalTagDetail = n_m_list ;
				}
				return m_fA_DisposalTagDetail ;
			}
			set	
			{	
				m_fA_DisposalTagDetail = value ;	
			}
		}
			
		

		/// <summary>
		/// 资产处置变更单预提折旧数据
		/// 资产处置变更单行AITDTO.Misc.资产处置变更单预提折旧数据
		/// </summary>
		private List<ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData> m_fA_DisposalDocPreDepreciateDetail ;
		[DataMember(IsRequired=false)]
		public List<ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData> FA_DisposalDocPreDepreciateDetail
		{
			get	
			{	
				if (m_fA_DisposalDocPreDepreciateDetail == null )
				{
					List<ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData> n_m_list = new List<ufida.u9.ait.openapi.FA_DisposalDocPreDepreciateDetailAITDTOData>() ;
					m_fA_DisposalDocPreDepreciateDetail = n_m_list ;
				}
				return m_fA_DisposalDocPreDepreciateDetail ;
			}
			set	
			{	
				m_fA_DisposalDocPreDepreciateDetail = value ;	
			}
		}
			
		

		/// <summary>
		/// 单位
		/// 资产处置变更单行AITDTO.Misc.单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_uOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData UOM
		{
			get	
			{	
				return m_uOM ;
			}
			set	
			{	
				m_uOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 数量
		/// 资产处置变更单行AITDTO.Misc.数量
		/// </summary>
		private System.Int32 m_qty ;
		[DataMember(IsRequired=false)]
		public System.Int32 Qty
		{
			get	
			{	
				return m_qty ;
			}
			set	
			{	
				m_qty = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 资产处置变更单行AITDTO.Misc.行号
		/// </summary>
		private System.Int32 m_lineNum ;
		[DataMember(IsRequired=false)]
		public System.Int32 LineNum
		{
			get	
			{	
				return m_lineNum ;
			}
			set	
			{	
				m_lineNum = value ;	
			}
		}
			
		

		/// <summary>
		/// 处置数量
		/// 资产处置变更单行AITDTO.Misc.处置数量
		/// </summary>
		private System.Int32 m_disposalQty ;
		[DataMember(IsRequired=false)]
		public System.Int32 DisposalQty
		{
			get	
			{	
				return m_disposalQty ;
			}
			set	
			{	
				m_disposalQty = value ;	
			}
		}
			
		

		/// <summary>
		/// 卡片
		/// 资产处置变更单行AITDTO.Misc.卡片
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_assetCard ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData AssetCard
		{
			get	
			{	
				return m_assetCard ;
			}
			set	
			{	
				m_assetCard = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																
		#endregion 
	} 	
}
